/** 数据缓存
 * @author: taiping
 * @date: 2022.03
 */
// @ts-ignore
import Cookies from 'js-cookie'
// import {aes} from './encryption'
// TokenKey为名字 token后台获取到的token
const TokenKey = 'token'

/**
 * 获取Cookies
 * @returns {String}
 */
export function getToken() {
    return Cookies.get(TokenKey)
}

/**
 * 设置Cookies
 * @param token{String}
 *
 */
export function setToken(token: string) {
    Cookies.set(TokenKey, token)
}

/**
 *
 * 删除Cookies
 */
export function removeToken() {
    Cookies.remove(TokenKey)
}
/**
 * 缓存用户信息
 * @param data
 *
 */
export function setUserInfo(data: object) {
    uni.setStorageSync('userInfo', JSON.stringify(data))
}

/**
 * 获取缓存的用户信息
 * @returns {Promise<Object>}
 */
export function  getUserInfo() {
    try{
        return JSON.parse(uni.getStorageSync('userInfo'))
    } catch (e) {
        return null
    }
}

/**
 * 删除用户缓存信息
 */
export function removeUserInfo() {
    uni.removeStorageSync('userInfo')
}
/**
 * 数据缓存
 * @param key{String}
 * @param data{Object}
 *
 */
export function setStorageSync(key: string, data: object) {
    uni.setStorageSync(key, JSON.stringify(data))
}

/**
 * 通过key获取缓存数据
 * @param key {String}
 * @returns {Object}
 */
export function  getStorageSync(key: string) {
    try {
        return JSON.parse( uni.getStorageSync(key))
    } catch (e) {
        return null
    }
}

/**
 * 删除指定key的缓存
 * @param key{String}
 */
export function removeStorageSync(key: string) {
    uni.removeStorageSync(key)
}
